package com.winchain.chainbill.tbill.biz.service;

import com.shell.bee.entity.mvc.RetMsg;
import com.shell.bee.persistence.model.PageLimit;
import com.winchain.chainbill.repayment.vo.CbDctRpmtVo;
import com.winchain.chainbill.tbill.biz.vo.TBillQueryVo;
import com.winchain.chainbill.tbill.biz.vo.TbRecVo;
import java.util.List;

public abstract interface TBillService {
	public abstract RetMsg saveTBill(TbRecVo paramTbRecVo);

	public abstract List<TbRecVo> queryTBills(PageLimit paramPageLimit, TBillQueryVo paramTBillQueryVo);

	public abstract RetMsg dctImmediately(TbRecVo paramTbRecVo);

	public abstract TbRecVo getDetail(String paramString);

	public abstract RetMsg dct(TbRecVo paramTbRecVo, boolean paramBoolean);

	public abstract List<TbRecVo> queryTBillsForMgt(PageLimit paramPageLimit, TBillQueryVo paramTBillQueryVo);

	public abstract void confirmReceivePayment(String paramString, CbDctRpmtVo paramCbDctRpmtVo);

	public abstract void uploadInvoices(String paramString1, String paramString2);

	public abstract List<TbRecVo> selectUnuploadInvoiceListByPage(PageLimit paramPageLimit,
			TBillQueryVo paramTBillQueryVo);

	public abstract boolean existBillCode(String paramString1, String paramString2);
}
